package com.gxa.admin.controller;

import com.gxa.admin.entity.Shop;
import com.gxa.admin.param.ShopParam;
import com.gxa.admin.service.ShopService;
import com.gxa.o2o.core.dto.ResultDTO;
import com.gxa.o2o.core.utils.Response;
import io.swagger.annotations.*;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;

/**
 * (Shop)表控制层
 *
 * @author makejava
 * @since 2021-07-20 20:57:32
 */
@RestController
@RequestMapping("shop")
@Api(tags = "后台----商家管理")
@ApiResponses({
        @ApiResponse(code=400,message="请求参数不完整或者错误"),
        @ApiResponse(code=404,message="找不到页面"),
        @ApiResponse(code=405,message="请求方式不正确，比如后台接收是post，但前端请求的是get"),
        @ApiResponse(code=406,message="页面地址和接口名冲突"),
        @ApiResponse(code=415,message="请求格式不正确，前端可能没有把请求头修改为json，也可能前端请求的json对象没有转换为字符串"),
        @ApiResponse(code=500,message="后台服务逻辑错误")
})
public class ShopController {
    /**
     * 服务对象
     */
    @Resource
    private ShopService shopService;

    /**
     * 通过主键查询单条数据
     *
     * @param id 主键
     * @return 单条数据
     */
    @ApiOperation(value = "根据id查询单个店铺详情")
    @PostMapping("/selectOne")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "query",name = "id",value = "要查询的id",required = true,dataType = "int"),
    })
    public ResultDTO selectOne(Long id) {
      return this.shopService.queryById(id);
    }
    @ApiOperation(value = "查询所有店铺（不包含未审核的)")
    @PostMapping("/listAll")
    public ResultDTO listAll(@RequestBody ShopParam shopParam){
        return shopService.findByAll(shopParam);
    }

}
